package com.hopes.bizz.enforcement.common.constant.enums;


import com.hopes.bizz.enforcement.common.api.feign.RemoteEnforcementDictService;
import com.hopes.boss.admin.api.resolver.EnumResolver;
import com.hopes.boss.admin.api.resolver.IDict;

/**
 * @author daijie
 * @version 1.0
 * @date 2023/7/18 10:28
 * @Description:
 */
public enum EnforcementModDictEnum implements EnumResolver<RemoteEnforcementDictService> {

    /**
     * LEC LS分析法-L 事故发生可能性等设置
     */
    RISK_LEC_OR_LS_CONFIG("queryByModuleCodeAsLabelValue"),
    /**
     * 查询积分事件和积分值
     */
    risk_integral_event_and_value("queryEventAndValueAsLabelValue"),

    /**
     * 积分商品
     */
    risk_integral_goods("riskIntegralGoodsMapper"),

    /**
     * 隐患检查表配置
     */
    risk_hid_checklist("listRiskHidCheckListAsDict"),

    /**
     * 隐患检查计划
     */
    risk_hid_checklist_plan("listRiskHidCheckListPlanAsDict"),

    /**
     * 安全警示标识
     */
    risk_safety_warning_label("listRiskSafetyWarningAsDict"),
    ;
    private final String methodName;

    private Class<? extends IDict> remoteClass = RemoteEnforcementDictService.class;

    EnforcementModDictEnum(String methodName) {
        this.methodName = methodName;
    }

    EnforcementModDictEnum(String methodName, Class<? extends IDict> remoteClass) {
        this.methodName = methodName;
        this.remoteClass = remoteClass;
    }

    @Override
    public String getType() {
        return this.name();
    }

    @Override
    public String getMethodName() {
        return methodName;
    }

    @Override
    public Class<? extends IDict> getRemoteClass() {
        return remoteClass;
    }
}
